FIG. 1 illustrates schematically a physiological data detection and monitoring system such as might be used to collect and analyse electrocardiogram (ECG) data from a patient. The system comprises a two-part ECG monitoring system comprising a first part 1, referred to here as the “digital plaster”, which resembles a conventional plaster for covering a wound or other minor injury. The digital plaster 1 is provided on one side with an adhesive that allows a user to stick the plaster to his or her skin. The plaster comprises inputs 2a,2b for coupling to respective electrodes 3a,3b to receive ECG signals, signal processing means, and a transceiver for communicating over a wireless link with a second part, or “base station”, 4. The electrodes are preferably integrated into the plaster 1, but may be separate from the plaster and coupled to it by suitable leads. The digital plaster is powered by a suitable battery, e.g. a 1V zinc air battery. Advances in technology may, in the future, allow the plaster to be self-powered, e.g. using some bio-electrical cell or using the body's electromagnetic fields.
The role of the base station 4 is to communicate with the plaster 1 over the wireless link for the purpose of recording and processing ECG data sent from the plaster 1, and configuring the operation of the digital plaster 1. The base station 4 should be suitable for carrying in a pocket or handbag or for wearing on a belt, although the design of the system is such that it can be left for prolonged periods outside of the range of the wireless link without significantly impacting on the required operation of the system.
FIG. 1 also illustrates a third system component 3 in the form of a central database 5. The base station 4 may periodically communicate with the central database 5, e.g. over a cellular telephone network, to transfer recorded ECG data to the database. This operation will allow physicians or other medical staff to remotely review the recorded data. Such a central database may manage many thousands of individual monitoring systems. Procedures for communicating between the central database and the individual monitoring systems will be readily apparent, as will the procedures for collecting and analysing data at the central database, and as such will not be described further here.
FIG. 2 illustrates in functional terms the “architecture” of the digital plaster 1. Three major processing blocks can be identified: a Sensor Interface and Processing block 6, an RF Transceiver 7, and a Digital Controller 8. Of these, the Sensor Interface and Processing block 6 performs analysis and classification operations on the detected ECG signal and will not be considered further here.
The RF Transceiver 7 enables bidirectional communication between the digital plaster 1 and the base station 4. Any appropriate transmission scheme can be used to transmit data including but not limited to AM, FM, FSK, UWB etc. The Digital Controller 8 performs various control, configuration and timing functions and updates the plaster operation when commands are received from the base station 4. The Digital Controller is also responsible for the framing of data sequences to be transmitted, i.e. for splitting a sequence into segments for transmission over the air interface within respective frames. As is well known, framing avoids the need for the retransmission of an entire data sequence should only a part of that sequence fail to be received (at the receiver). Correspondingly, the Digital Controller 7 is also responsible for the “unloading” of data segments from received frames and for the reassembly of these segments into data sequences.
FIG. 3 illustrates a simplified protocol architecture for the bidirectional wireless link used in the monitoring system 1,4 of FIG. 1. An “application” layer 9 sits on the top of the protocol stack and implements the functions of the Sensor Interface and Processing Block 6 as well as some of the functions of the Digital Controller 7. Beneath the application layer 9 sits a Data Link Layer (DLL) 10, which consists of the Logical Link Control (LLC) and Media Access Control (MAC) sublayers. Beneath the DLL 10 sits the physical layer 11. The physical layer implements the processing functions of the RF Transceiver 7.
An important role of the DLL 10 is to facilitate error free transmission over the air interface. The use of frames to transmit a data sequence is the cornerstone of this process. Individual frames can be error checked at a receiver using error checking codes (e.g. CRC codes) contained in the frame headers. On the receiver side, if the DLL correctly receives a frame, it will return an acknowledgement message (ACK) to the sender. If an error is detected in a frame, the DLL will return an error message or non-acknowledgement (NACK). In a typical system, the DLL will transmit frames in sequence (each frame includes a sequence number) and will not transmit the next frame in the sequence until an ACK is received for the in-flight frame. On the transmitter side, if a NACK is received for an in-flight frame, the DLL will re-transmit the in-flight frame. When a frame is sent by the DLL, a timer is started. If the timer expires before either an ACK or a NACK is received for the frame, the frame is retransmitted. This use of a timer avoids the transmitter hanging in the event that a frame has been lost or incorrectly received, and the ACK/NACK is lost in-flight.
On the receiver side, the DLL examines the sequence number within a received frame to determine whether or not that frame has already been received. A duplicate frame may be received when the ACK for a given frame has been lost in flight and, following expiry of the timer at the sender, that same frame is retransmitted. If a received frame is a duplicate, it is discarded whilst at the same time an ACK is returned to the sender. Assuming that a received frame is not a duplicate, the DLL at the receiver then performs an error check on the frame. If no errors are detected, an ACK is returned to the sender. If an error is found, a NACK is returned. It is noted that ACKs/NACKs are not retransmitted. As already indicated above, if the sender does not receive an ACK/NACK before a timeout occurs, it will retransmit the last sent frame.
A problem with the above approach is that it allows the transmission of duplicate frames, even when a frame has been correctly received at the receiver side. As the frame size can be relatively large, e.g. several Kbytes, such retransmissions are wasteful of power resources at the transmitter. Whilst this is not necessarily a problem for devices having large batteries (or mains power supplies), it is a problem for massively miniaturised devices such as the digital plaster 1 described above.